p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
↳ QTRS
↳ Non-Overlap Check
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0)
p1(s1(x0))
leq2(0, x0)
leq2(s1(x0), 0)
leq2(s1(x0), s1(x1))
if3(true, x0, x1)
if3(false, x0, x1)
diff2(x0, x1)
DIFF2(X, Y) -> LEQ2(X, Y)
LEQ2(s1(X), s1(Y)) -> LEQ2(X, Y)
DIFF2(X, Y) -> P1(X)
DIFF2(X, Y) -> DIFF2(p1(X), Y)
DIFF2(X, Y) -> IF3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0)
p1(s1(x0))
leq2(0, x0)
leq2(s1(x0), 0)
leq2(s1(x0), s1(x1))
if3(true, x0, x1)
if3(false, x0, x1)
diff2(x0, x1)
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
DIFF2(X, Y) -> LEQ2(X, Y)
LEQ2(s1(X), s1(Y)) -> LEQ2(X, Y)
DIFF2(X, Y) -> P1(X)
DIFF2(X, Y) -> DIFF2(p1(X), Y)
DIFF2(X, Y) -> IF3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0)
p1(s1(x0))
leq2(0, x0)
leq2(s1(x0), 0)
leq2(s1(x0), s1(x1))
if3(true, x0, x1)
if3(false, x0, x1)
diff2(x0, x1)
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
LEQ2(s1(X), s1(Y)) -> LEQ2(X, Y)
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0)
p1(s1(x0))
leq2(0, x0)
leq2(s1(x0), 0)
leq2(s1(x0), s1(x1))
if3(true, x0, x1)
if3(false, x0, x1)
diff2(x0, x1)
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
LEQ2(s1(X), s1(Y)) -> LEQ2(X, Y)
trivial
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0)
p1(s1(x0))
leq2(0, x0)
leq2(s1(x0), 0)
leq2(s1(x0), s1(x1))
if3(true, x0, x1)
if3(false, x0, x1)
diff2(x0, x1)
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
DIFF2(X, Y) -> DIFF2(p1(X), Y)
p1(0) -> 0
p1(s1(X)) -> X
leq2(0, Y) -> true
leq2(s1(X), 0) -> false
leq2(s1(X), s1(Y)) -> leq2(X, Y)
if3(true, X, Y) -> X
if3(false, X, Y) -> Y
diff2(X, Y) -> if3(leq2(X, Y), 0, s1(diff2(p1(X), Y)))
p1(0)
p1(s1(x0))
leq2(0, x0)
leq2(s1(x0), 0)
leq2(s1(x0), s1(x1))
if3(true, x0, x1)
if3(false, x0, x1)
diff2(x0, x1)